package com.mini.mysql.model;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.mini.vo.UserVO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.persistence.*;
import java.util.Date;

/**
 * @author: zhaocg
 * @created: 2020/09/25 15:53
 */
@Entity
@Data
@NoArgsConstructor
@AllArgsConstructor
@ApiModel(value = "公海二次机会数据实体")
public class BusinessStudentSecondOrderInfo {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    @ApiModelProperty(value = "学员手机号")
//    @EncryptField
    private String phoneNo;

    @ApiModelProperty(value = "数据状态 0 流入公海  1 分配运营 ")
    private Integer dataStates;

    @ApiModelProperty(value = "机会状态 0-正常 1-取消订单 2-未关联(关联取消) 3-未关联(续报取消)")
    private Integer chanceStates;

    @ApiModelProperty(value = "[20201214]续报类型：二阶类型：1-续报专用，2-流量复用，3-拉新裂变（转介绍）")
    private Integer continueType;

    @ApiModelProperty(value = "是否可用 0-可用 1-不可用")
    private Integer available;

    @ApiModelProperty(value = "机会状态不正常的原因")
    private String chanceReason;

    @ApiModelProperty(value = "大课订单")
    private String bigOrderNo;

    @ApiModelProperty(value = "大课报名时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date bigOrderTime;

    @ApiModelProperty(value = "大课名称")
    private String bigOrderName;

    @ApiModelProperty(value = "大课流水")
    private Double bigOrderPrice;

    @ApiModelProperty(value = "大课skucode")
    private String bigSkuCode;

    @ApiModelProperty(value = "大课sku名称")
    private String bigSkuName;

    @ApiModelProperty(value = "飞天站点")
    private Long miniLessonId;

    @ApiModelProperty(value = "业务线，0加盐业务线 1集团业务线")
    private Integer businessType;

    @ApiModelProperty(value = "小课skucode")
    private String miniSkuCode;

    @ApiModelProperty(value = "小课sku名称")
    private String miniSkuName;

    @ApiModelProperty(value = "小课订单编号")
    private String miniOrderNo;

    @ApiModelProperty(value = "小课订单支付时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date miniOrderPayTime;

    @ApiModelProperty(value = "小课订单金额")
    private Float miniOrderPrice;

    @ApiModelProperty(value = "二阶运营老师id")
    private Long secondTeacherId;

    @ApiModelProperty(value = "二阶运营老师名称")
    private String secondTeacherName;

    @ApiModelProperty(value = "二阶运营老师飞天账号")
    private String secondTeacherLoginName;

    @ApiModelProperty(value = "二阶运营老师微信号")
    private String secondTeacherWxNo;

    @ApiModelProperty(value = "二阶运营老师微信二维码地址")
    private String secondTeacherWxQrUrl;

    @ApiModelProperty(value = "二阶运营老师手机号")
    private String secondTeacherPhone;

    @ApiModelProperty(value = "流入公海时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date inflowTime;

    @ApiModelProperty(value = "分配运营时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date allocationTime;

    @ApiModelProperty(value = "意向-----无: 0 ，低:1，中:2，高:3")
    private Integer intentionCode;

    @ApiModelProperty(value = "学员微信号，顺延，不可修改")
    private String studentWechatNo;

    @ApiModelProperty(value = "学员微信昵称，顺延，不可修改")
    private String studentWechatName;

    @ApiModelProperty(value = "学员微信备注昵称，顺延，可修改")
    private String studentWechatRemarksName;

    @ApiModelProperty(value = "加微状态，顺延，置为 “未加微” 可修改； 0未加微 1已加微")
    private Integer studentAddWechat = 0;

    @ApiModelProperty(value = "加微状态，顺延，置为 “未加群” 可修改； 0未加群 1已加群")
    private Integer studentAddWechatGroup = 0;

    @ApiModelProperty(value = "入学测试状态 0未测试 1已测试")
    private Integer entranceTest;

    @ApiModelProperty(value = "创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createTime;

    @ApiModelProperty(value = "更新时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date updateTime;

    @ApiModelProperty(value = "学历")
    @Transient
    private String education;

    @ApiModelProperty(value = "职业")
    @Transient
    private String occupation;

    @ApiModelProperty(value = "年龄")
    @Transient
    private String age;

    @ApiModelProperty(value = "地域")
    @Transient
    private String region;

    @ApiModelProperty(value = "展示手机号")
    @Transient
    private String showPhoneNo;

    @ApiModelProperty(value = "展示微信号")
    @Transient
    private String showWechat;

    @ApiModelProperty(value = "二阶运营老师所属组织")
    @Transient
    private String teacherFullDept;

    @ApiModelProperty(value = "流水归属")
    @Transient
    private String ascription;

    @ApiModelProperty(value = "二阶老师直属部门")
    @Transient
    private Long deptId;

    @ApiModelProperty(value = "一阶运营老师")
    @Transient
    private UserVO miniOrderTeacher;


}
